<code>
 

 
IOSerdes from 2017_03_03, or thereabouts
================================================================================

 56 -- DUT Output signals / Funcmon Registers  
 18 -- DUT Input  signals                      
  6 -- DUT Clock  signals
  1 -- DUT Reset  signal
----------------------------------------------------------------------------
 81 -- DUT IO's


The bitstreams can be found under Bob's Tamu_test_March_08_2017 Google Drive folder,
which can be found at

https://drive.google.com/open?id=0B-S5jNzoJurUb1R6SjlWQUNQcEk

The bitstreams for this test can be found in subfolder

ioserdes


DUT Bitstream
----------------------

dut_IOSerdes_2017_03_02_use_six_clocks_all_banks_global_reset_tmv_bus_09.bit


Funcmon Bitstream
----------------------

(There is more than 1 funcmon bitstream in the folder.  
This 2017_03_10 bitstream has the best chance of 100% success.)

funcmon_ioserdes_980t_2017_03_10_56_regs_clks6_screens2_send_two_resets.bit


================================================================================

All beam testing should be done with the "Normal" pattern
  -- Detailed pattern info is shown at the bottom

To run, from RESET/DISABLED,
  -- First switch to RUNNING
  -- Then swithc to ENABLED


NOTE THAT FM8 IS THE HIGH FREQUQUENCY BUTTON FOR ioserdes
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

FM8 Off -- Low  Frequency
FM8 On  -- High Frequency

Instructions for both low and high frequency operation:
-------------------------------------------------------

  -- Set FM5 / FM6 / FM7  to  HIGH / low / HIGH (see info and table immediately below)
  -- Set FMA HIGH and FM9 low : one screen of 64 32-bit registers (further info below)


ioserdes, in normal mode, sends a pattern, which repeats every 8 cycles, to the DUT:

1.1.11.. (.'s instead of 0's)

Buttons FM5 / FM6 / FM7 are used to select a delayed comparison pickoff point for the return pattern.

Pickoff Point Table (.'s for 0's)

 FM5 FM6 FM7  Comment
-------------------------------------------------------
  .   .   .   No delay       from "target" pickoff point
  1   .   .   Delay 1 cycle  from "target" pickoff point
  .   1   .   Delay 2 cycles from "target" pickoff point
  1   1   .   Delay 3 cycles from "target" pickoff point
  .   .   1   Delay 4 cycles from "target" pickoff point
  1   .   1   Delay 5 cycles from "target" pickoff point <== Selection for passing test
  .   1   1   Delay 6 cycles from "target" pickoff point
  1   1   1   Delay 7 cycles from "target" pickoff point
-------------------------------------------------------


The funcmon program used for this test can display two groups of 16-bit counts per register
on one screen, or 1 32-bit count per register on two screens.  Buttoms FM9 and FMA used to
select the different display options, as shown in the table below.

Since there are only 56 32-bit registers in this design, it makes sense to only use the
option which displays all 56 32-bit counts on one screen.  As can be seen in the table, the
button states used to achieve this are FM9 low and FMA high.


Screen / Display Selection (.'s for 0's)
-----------------------------------

  FM9  FMA  -- Each display register contains ...
-----------------------------------------------------------------------------------
   .    .   -- 2 16-bit error counts -- bits 15 downto  0 from each 32-bit register
   1    .   -- 2 16-bit error counts -- bits 31 downto 16 from each 32-bit register
   .    1   --   32-bit error counts -- registers  63 downto   0                     <= Use this only!
   1    1   --   32-bit error counts -- registers 127 downto  64
-----------------------------------------------------------------------------------


                                           __________                     __________ 
                                           |        |                     |        | 
                                           |        |       Pattern:      |        | 
                                           | RESET/ |       --------      |DISABLE/| 
                                           | RUNNING|        Normal       | ENABLE | 
                                           |        |                     |        | 
                                           |        |                     |        | 
                                           ----------                     ---------- 

                                           __________                     __________ 
                                           |        |                     |        | 
                                           |        |                     |        | 
                                           |        |                     |        | 
                                           |  FM0   |                     |  FM2   | 
                                           |        |                     |        | 
                                           |        |                     |        | 
                                           ----------                     ---------- 


   Add 1        Add 2        Add 4        High                 Screen      Choose
   cycle        cycles       cycles       Frequency            Select      32-bit
   delay to     delay to     delay to     Clock                  0         Register
   compare      compare      compare                        
   point        point        point   
  __________   __________   __________   __________          __________   __________   
  |        |   |        |   |        |   |        |          |        |   |        |
  |        |   |        |   |        |   |        |          |        |   |        |
  |        |   |        |   |        |   |        |          |        |   |        |
  |  FM5   |   |  FM6   |   |  FM7   |   |  FM8   |          |  FM9   |   |  FMA   |
  |        |   |        |   |        |   |        |          |        |   |        |
  |        |   |        |   |        |   |        |          |        |   |        |
  ----------   ----------   ----------   ----------          ----------   ----------   

All beam testing should be done with the "Normal" pattern

Patterns: (.'s for 0's)

........  -- Zeroes
11111111  -- Ones
1.1.1.1.  -- Inverse
1.1.11..  -- Normal



</code>